package com.zcg.blogger.dao;

import java.util.List;
import java.util.Map;

import com.zcg.blogger.model.Comment;

public interface CommentDao {
	
	/**
	 * 插入一条评论
	 * @param comment
	 * @return
	 */
	public int insert(Comment comment);

	/**
	 * 更新一条评论 
	 * @param comment
	 * @return
	 */
	public int update(Comment comment);

	/**
	 * 根据id删除一条评论
	 * @param id
	 * @return
	 */
	public int delete(int id);

	/**
	 * 查询出所有评论列表
	 * @return
	 */
	public List<Comment> selectAll();

	/**
	 * 查询评论数
	 * @return
	 */
	public int countAll();
	
	/**
	 * 查询某篇文章的评论数
	 * @param id 
	 * @return
	 */
	public int countByArticle(int id);

	/**
	 * 根据id查询评论内容
	 * @param id
	 * @return
	 */
	public Comment findCommentById(int id);
	
	/**
	 * 根据文章id查询评论列表
	 * @param id
	 * @return
	 */
	public List<Comment> selectCommentByArticleId(Map map);

	/**
	 * 修改评论点赞数加1
	 * @param id
	 */
	public void addCommentPraise(int id);
	
	/**
	 * 根据用户id查询评论列表
	 * @param map
	 * @return
	 */
	public List<Object> findCommentByUserId(Map map);
	
	/**
	 * 根据用户id查询最近评论列表
	 * @param map
	 * @return
	 */
	List<Object> findNewestCommentByUserId(Map map);
}
